home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / mozilla-firefox / include / xpcom / nsIScriptableInputStream.h < prev    next >
C/C++ Source or Header  |  2006-05-08  |  5KB  |  148 lines

  1. /*
  2.  * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsIScriptableInputStream.idl
  3.  */
  4.  
  5. #ifndef __gen_nsIScriptableInputStream_h__
  6. #define __gen_nsIScriptableInputStream_h__
  7.  
  8.  
  9. #ifndef __gen_nsISupports_h__
  10. #include "nsISupports.h"
  11. #endif
  12.  
  13. /* For IDL files that don't want to include root IDL files. */
  14. #ifndef NS_NO_VTABLE
  15. #define NS_NO_VTABLE
  16. #endif
  17. class nsIInputStream; /* forward declaration */
  18.  
  19.  
  20. /* starting interface:    nsIScriptableInputStream */
  21. #define NS_ISCRIPTABLEINPUTSTREAM_IID_STR "a2a32f90-9b90-11d3-a189-0050041caf44"
  22.  
  23. #define NS_ISCRIPTABLEINPUTSTREAM_IID \
  24.   {0xa2a32f90, 0x9b90, 0x11d3, \
  25.     { 0xa1, 0x89, 0x00, 0x50, 0x04, 0x1c, 0xaf, 0x44 }}
  26.  
  27. /**
  28.  * nsIScriptableInputStream provides scriptable access to the nsIInputStream.  
  29.  *
  30.  * @status FROZEN
  31.  */
  32. class NS_NO_VTABLE nsIScriptableInputStream : public nsISupports {
  33.  public: 
  34.  
  35.   NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISCRIPTABLEINPUTSTREAM_IID)
  36.  
  37.   /** 
  38.      * Closes the stream. 
  39.      */
  40.   /* void close (); */
  41.   NS_IMETHOD Close(void) = 0;
  42.  
  43.   /** Wrap the given nsIInputStream with this nsIScriptableInputStream. 
  44.      *  @param aInputStream [in] parameter providing the stream to wrap 
  45.      */
  46.   /* void init (in nsIInputStream aInputStream); */
  47.   NS_IMETHOD Init(nsIInputStream *aInputStream) = 0;
  48.  
  49.   /** Return the number of bytes currently available in the stream 
  50.      *  @param _retval [out] parameter to hold the number of bytes 
  51.      *         if an error occurs, the parameter will be undefined 
  52.      *  @return error status 
  53.      */
  54.   /* unsigned long available (); */
  55.   NS_IMETHOD Available(PRUint32 *_retval) = 0;
  56.  
  57.   /** Read data from the stream. 
  58.      *  @param aCount [in] the maximum number of bytes to read 
  59.      *  @param _retval [out] the data
  60.      */
  61.   /* string read (in unsigned long aCount); */
  62.   NS_IMETHOD Read(PRUint32 aCount, char **_retval) = 0;
  63.  
  64. };
  65.  
  66. /* Use this macro when declaring classes that implement this interface. */
  67. #define NS_DECL_NSISCRIPTABLEINPUTSTREAM \
  68.   NS_IMETHOD Close(void); \
  69.   NS_IMETHOD Init(nsIInputStream *aInputStream); \
  70.   NS_IMETHOD Available(PRUint32 *_retval); \
  71.   NS_IMETHOD Read(PRUint32 aCount, char **_retval); 
  72.  
  73. /* Use this macro to declare functions that forward the behavior of this interface to another object. */
  74. #define NS_FORWARD_NSISCRIPTABLEINPUTSTREAM(_to) \
  75.   NS_IMETHOD Close(void) { return _to Close(); } \
  76.   NS_IMETHOD Init(nsIInputStream *aInputStream) { return _to Init(aInputStream); } \
  77.   NS_IMETHOD Available(PRUint32 *_retval) { return _to Available(_retval); } \
  78.   NS_IMETHOD Read(PRUint32 aCount, char **_retval) { return _to Read(aCount, _retval); } 
  79.  
  80. /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
  81. #define NS_FORWARD_SAFE_NSISCRIPTABLEINPUTSTREAM(_to) \
  82.   NS_IMETHOD Close(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Close(); } \
  83.   NS_IMETHOD Init(nsIInputStream *aInputStream) { return !_to ? NS_ERROR_NULL_POINTER : _to->Init(aInputStream); } \
  84.   NS_IMETHOD Available(PRUint32 *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Available(_retval); } \
  85.   NS_IMETHOD Read(PRUint32 aCount, char **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Read(aCount, _retval); } 
  86.  
  87. #if 0
  88. /* Use the code below as a template for the implementation class for this interface. */
  89.  
  90. /* Header file */
  91. class nsScriptableInputStream : public nsIScriptableInputStream
  92. {
  93. public:
  94.   NS_DECL_ISUPPORTS
  95.   NS_DECL_NSISCRIPTABLEINPUTSTREAM
  96.  
  97.   nsScriptableInputStream();
  98.  
  99. private:
  100.   ~nsScriptableInputStream();
  101.  
  102. protected:
  103.   /* additional members */
  104. };
  105.  
  106. /* Implementation file */
  107. NS_IMPL_ISUPPORTS1(nsScriptableInputStream, nsIScriptableInputStream)
  108.  
  109. nsScriptableInputStream::nsScriptableInputStream()
  110. {
  111.   /* member initializers and constructor code */
  112. }
  113.  
  114. nsScriptableInputStream::~nsScriptableInputStream()
  115. {
  116.   /* destructor code */
  117. }
  118.  
  119. /* void close (); */
  120. NS_IMETHODIMP nsScriptableInputStream::Close()
  121. {
  122.     return NS_ERROR_NOT_IMPLEMENTED;
  123. }
  124.  
  125. /* void init (in nsIInputStream aInputStream); */
  126. NS_IMETHODIMP nsScriptableInputStream::Init(nsIInputStream *aInputStream)
  127. {
  128.     return NS_ERROR_NOT_IMPLEMENTED;
  129. }
  130.  
  131. /* unsigned long available (); */
  132. NS_IMETHODIMP nsScriptableInputStream::Available(PRUint32 *_retval)
  133. {
  134.     return NS_ERROR_NOT_IMPLEMENTED;
  135. }
  136.  
  137. /* string read (in unsigned long aCount); */
  138. NS_IMETHODIMP nsScriptableInputStream::Read(PRUint32 aCount, char **_retval)
  139. {
  140.     return NS_ERROR_NOT_IMPLEMENTED;
  141. }
  142.  
  143. /* End of implementation class template. */
  144. #endif
  145.  
  146.  
  147. #endif /* __gen_nsIScriptableInputStream_h__ */
  148.